//package com.tsk.example.api.controller;
//
//import cn.com.gf.cap.common.msg.TableResultResponse;
//import cn.com.gf.cap.demo.api.convert.DemoConverter;
//import cn.com.gf.cap.demo.application.model.PagingQueryParam;
//import cn.com.gf.cap.demo.application.service.DemoTableService;
//import cn.com.gf.cap.demo.domain.model.DemoTableVO;
//import com.github.pagehelper.Page;
//import com.github.pagehelper.PageHelper;
//import com.tsk.example.api.model.DemoTableParamsVO;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.validation.annotation.Validated;
//import org.springframework.web.bind.annotation.PostMapping;
//import org.springframework.web.bind.annotation.RequestBody;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RestController;
//
//import java.util.List;
//
///**
// * @author: 黄嘉振
// * @create: 2023/3/8 14:07
// * @description:    以贴近业务场景命名，这里作为示例直接使用表名+controller
// **/
//@Slf4j
//@RestController
//@Validated
//@RequestMapping("/demoTable")
//public class DemoTableController {
//
//    @Autowired
//    private DemoTableService demoTableService;
//
//    /**
//     * 上送不同的条件进行列表查询
//     * 目前的分页查询是返回 TableResultResponse，与定义的统一报文格式存在冲突，故这里使用自定义注解 @IgnoreTarget 跳过统一报文
//     * @param vo    实体
//     * @return  结果
//     */
//    @PostMapping("/list")
//    public TableResultResponse<DemoTableVO> list(@RequestBody @Validated DemoTableParamsVO vo) {
//        Page<Object> result = PageHelper.startPage(
//                new PagingQueryParam(vo.getPage(), vo.getLimit()));
//        List<DemoTableVO> list = demoTableService.list(DemoConverter.toDemoTableDTO(vo));
//        return new TableResultResponse<>(result.getTotal(), list);
//    }
//}
